# frozen_string_literal: true

require "cmd/link"
require "cmd/shared_examples/args_parse"

RSpec.describe Homebrew::Cmd::Link do
  it_behaves_like "parseable arguments"

  it "links a given Formula", :integration_test do
    setup_test_formula "testball", tab_attributes: { installed_on_request: true }
    Formula["testball"].any_installed_keg.unlink
    Formula["testball"].bin.mkpath
    FileUtils.touch Formula["testball"].bin/"testfile"

    expect { brew "link", "testball" }
      .to output(/Linking/).to_stdout
      .and not_to_output.to_stderr
      .and be_a_success
    expect(HOMEBREW_PREFIX/"bin/testfile").to be_a_file
  end
end
